Next: Modification Time, Previous: Buffer File Name, Up: Buffers [Contents][Index]
Emacs keeps a flag called the modified flag for each
buffer, to record whether you have changed the text of the
buffer. This flag is set to t whenever you alter the
contents of the buffer, and cleared to nil when you
save it. Thus, the flag shows whether there are unsaved changes.
The flag value is normally shown in the mode line (see Mode Line
Variables), and controls saving (see Saving Buffers) and
auto-saving (see Auto-Saving).
Some Lisp programs set the flag explicitly. For example, the
function set-visited-file-name sets the flag to
t, because the text does not match the newly-visited
file, even if it is unchanged from the file formerly visited.
The functions that modify the contents of buffers are described in Text.
This function returns t if the buffer
buffer has been modified since it was last read in
from a file or saved, or nil otherwise. If
buffer is not supplied, the current buffer is
tested.
This function marks the current buffer as modified if
flag is non-nil, or as unmodified if
the flag is nil.
Another effect of calling this function is to cause
unconditional redisplay of the mode line for the current
buffer. In fact, the function
force-mode-line-update works by doing this:
(set-buffer-modified-p (buffer-modified-p))
Like set-buffer-modified-p, but does not
force redisplay of mode lines.
This command marks the current buffer as unmodified, and
not needing to be saved. If arg is
non-nil, it marks the buffer as modified, so
that it will be saved at the next suitable occasion.
Interactively, arg is the prefix argument.
Don’t use this function in programs, since it prints
a message in the echo area; use
set-buffer-modified-p (above) instead.
This function returns buffer’s
modification-count. This is a counter that increments every
time the buffer is modified. If buffer is
nil (or omitted), the current buffer is used.
The counter can wrap around occasionally.
This function returns buffer’s
character-change modification-count. Changes to text
properties leave this counter unchanged; however, each time
text is inserted or removed from the buffer, the counter is
reset to the value that would be returned by
buffer-modified-tick. By comparing the values
returned by two buffer-chars-modified-tick
calls, you can tell whether a character change occurred in
that buffer in between the calls. If buffer is
nil (or omitted), the current buffer is
used.
Next: Modification Time, Previous: Buffer File Name, Up: Buffers [Contents][Index]